<?php
/**
 * Database ENCOding REPair tool
 * Part of WheelDB Framework demos
 * 
 * @author Richard Ejem
 * @package WDB
 */
use WDB\Database;
$done = false;


require __DIR__.'/../../nette.min.php';
Nette\Diagnostics\Debugger::enable();
Nette\Diagnostics\Debugger::$strictMode = TRUE;

require __DIR__.'/../../loader.php';
try 
{
    $db = Database::getInstance('mysql_install'); // added for auto installation. Comment out the try-catch block if you want
                                                  //to enter custom db connection config here and leave only catch block content.
    $db->getDriver()->setCharset('latin2');
}
catch(Exception $e)
{
    Database::registerConnection('encorep',
        WDB\Structure\ConnectionConfig::create('MySQL',
                'localhost', 'root', 'root',
                null, FALSE, 'latin2'
        ));
    $db = Database::getInstance('encorep');
}


$db->queryRaw('CREATE DATABASE IF NOT EXISTS badencoding');
$db->queryRaw('USE badencoding');
$db->queryRaw('DROP TABLE IF EXISTS foo;');
$db->queryRaw('CREATE TABLE foo (bar VARCHAR(50), id INT NOT NULL AUTO_INCREMENT, PRIMARY KEY(id));');
$db->queryRaw("INSERT INTO foo (bar) VALUES ('žluťoučký kůň pěl ďábelské ódy')");
?>
problém vytvořen; nyní se můžete například v phpMyAdmin přesvědčit, že řádek tabulky <em>foo</em> v databázi <em>badencoding</em>
je uložen ve špatném kódování.